package com.atguigu.gmall.product.mapper;


import com.atguigu.gmall.model.product.SpuSaleAttr;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
* @author Zenglingxiao
* @description 针对表【spu_sale_attr(spu销售属性)】的数据库操作Mapper
* @createDate 2022-03-06 13:03:55
* @Entity com.atguigu.gmall.product.domain.SpuSaleAttr
*/
@Mapper
public interface SpuSaleAttrMapper extends BaseMapper<SpuSaleAttr> {

    /**
     * 根据spuId获取销售属性
     * @param spuId
     * @return
     */
    List<SpuSaleAttr> getSpuSaleAttrList(Long spuId);

    /**
     * 查询skuid对应的spu的所有销售属性名值，并做标记
     * @param spuId
     * @return
     */
    List<SpuSaleAttr> getSpuAndSkuSaleAttrValue(@Param("skuId") Long skuId, @Param("spuId") Long spuId);

    /**
     * 查询spu下的所有sku的销售属性值的map组合如：键：1 值：2|3
     * @param spuId
     */
    @MapKey("value_ids")
    Map<String, Object> getSpuDeSkuSaleAttrValuesZuhe(@Param("spuId") Long spuId);
}




